package try_;

/**
 * @Author 小闽
 * @Date 2024/9/23 17:08
 * @PackageName: try_
 * @ClassName: TryCatchExercise02
 * @Description: 异常练习2
 * @Version 1.0
 */
public class TryCatchExercise02 {
    public static void main(String[] args) {
        System.out.println(ExceptionExercise02.method());
    }
}
class ExceptionExercise02{
    public static int method(){
        int i = 1;
        try{
            i++; // i = 2
            String[] names = new String[3]; // 这里会出现空指针异常 NullPointerException
            if (names[1].equals("tom")){
                System.out.println(names[1]);
            }else{
                names[3] = "苏宁易购";
            }
            return 1;
        }catch (ArrayIndexOutOfBoundsException e){
            return 2;
        }catch (NullPointerException e){
            return ++i; // 在这里由于finally必须要执行，所以只会++i，即i = 3
        }finally { // 这里必须执行
            return ++i;  // 此时 ++i中的 i=4
        }
    }
}
